#ifndef MAINWINDOW_H
#define MAINWINDOW_H


#include "SARibbonMainWindow.h"
#include <QScopedPointer>
#include <QMainWindow>


#include "SAFramelessHelper.h"
#include "DockWidget.h"
#include "DockManager.h"

#include "MainAppInterface.h"
#include "PluginManager.h"

class MainuiPluginInterface;


class MainWindow : public SARibbonMainWindow,public MainAppInterface
{
    Q_OBJECT

public:
    MainWindow(QWidget *parent = nullptr);
    ~MainWindow();

   inline  QMainWindow* getMainWindow() override { return this; }

private:
    void  InitPlugins();
    void  InitRibborDock();
    void loadStyleSheet(const QString& qsStyleFile);


private:
    ads::CDockManager *m_DockManager;
    PluginManager *m_plugManager;
    MainuiPluginInterface * m_MainUiPlugin;
    ads::CDockAreaWidget* m_centerAreaWidget;

};
#endif // MAINWINDOW_H
